1. Field of the Invention
The present invention relates to a polygon filling control apparatus, and more particularly to a novel-type polygon filling control apparatus capable of causing polygon filling data to be written into a memory unit without interrupting a linear interpolation operation unit (hereinafter referred to as a DDA).
2. Description of the Relevant Art
In a graphic display apparatus, it is desirable to increase the capacity of the image memory unit without an increase in the entire cost of the apparatus. Accordingly, a static random access memory unit (hereinafter referred to as a SRAM) is hardly used, but a dynamic random access memory unit (hereinafter referred to as a DRAM) is generally used.
However, when the DRAM is used as an image memory unit, the unit time required for accessing to the DRAM is about 230 to 400 nsec for every one-pixel data, although the DDA takes about 40 to 60 nsec (which is the obtainable highest speed when the DDA is formed in TTL logic) for generating one-pixel data. It is therefore required that, while all pixel data necessary for polygon filling are written into the image memory unit, the arithmetic operation of the DDA is frequently interrupted. This disadvantageously increases the time required for writing filling pixel data into the image memory unit, resulting in a considerable increase in the time required for displaying the image for which the filling operation has been executed.
To overcome such a problem, a graphic display apparatus of the raster scanning type as shown in FIG. 10 is proposed. In this apparatus, dividers 171 and adders 172 receive polygon apex data supplied from a host processor (not shown), and execute linear interpolation of two opposite sides of a polygon for every coordinate data. The coordinate data of the end points of line segments obtained based on the linear interpolation results, are supplied to a DDA 173. As shown in FIG. 11, there are also disposed buffer memories 174a, 174b for temporarily holding a predetermined number, along a scanning line, of filling pixel data supplied from the DDA 173. Also disposed is an image memory unit 175 into which a predetermined number of pixel data supplied from each buffer memory are written. Also disposed is a timing control circuit 176 for controlling the changeover of the buffer memories 174a, 174b and for supplying a memory timing signal to the image memory unit 175. The apparatus having the arrangement above-mentioned will be hereinafter referred to the type of a double buffer method. It is noted that there is also disclosed a general-purpose processor 177, a memory 178 and an I/0 interface 179.
The double buffer method will be described in detail with the arrangement taken as an example in which each buffer memory is adapted to hold 8-pixel data along one scanning line.
According to the double buffer method, provision is made such that, while the DDA 173 supplies filling pixel data to one buffer memory, up to 8-pixel data held in the other buffer memory are collectively supplied to the image memory unit 175.
Accordingly, the DDA 173 takes about 400 nsec. for generating 8-pixel data, and the time required for writing data into the image memory unit 175 is also about 400 nsec at maximum. Therefore, the speed at which filling pixel data in the scanning line direction are generated is made substantially equal to the speed at which data are written into the image memory unit 175, when consideration is made on one-pixel data. Thus, polygon filling may be carried out with the DDA 173 hardly interrupted.
However, when filling a polygon, it is required to generate a considerable number of pixel data. Accordingly, even though pixel data may be generated with the DDA 173 hardly interrupted, such polygon filling speed is not still sufficiently high if a real-time operation is desired in a graphic display apparatus.
The foregoing will be described in more detail in the following.
There is taken an example of a regular square of 20 pixels .times. 20 pixels, the sides of which are inclined in an arbitrary direction with respect to the scanning line direction. If the pixel data can be generated and written into the image memory unit 175 with the DDA 173 hardly interrupted, it is sufficient to generate and write 80-pixel data into the image memory unit 175 for carrying out a wire frame model display involving no filling. However, when desired to display an image as filled, it is required to generate and write 400-pixel data into the image memory unit 175. In this case, the necessary time would be multiplied by five in a rough theoretical calculation. The difference in time required for the processing will vary in proportion to a square of the size of a polygon figure to be drawn. Accordingly, it is a common practice to make the wire frame display with the natural figure display sacrificed when the real-time operation is strongly desired.
To overcome such problem of displaying, in real time, a polygon figure as filled, it is required to increase the speed at which pixel data are generated by the DDA 173. However, the data generation speed of the DDA 173 formed in TTL logic is limited to a range from about 40 to about 60 nsec, as mentioned earlier. Accordingly, even though the polygon filling is carried out without any interruption of the DDA 173, a maximum of 62500 to 41600 polygons/second may be merely drawn, provided that each of the polygons is converted into a regular square shown in FIG. 12. Further, when overhead such as pixel data input/output is taken into consideration, actually about 50000 to about 33000 polygons may be merely drawn. Accordingly, when considering the case of a three-dimensional hidden surface removal, a shading processing or the like are to be made, the number of polygons which can be drawn will be further lowered.
A DDA formed in ECL logic enables an increase in the highest limit of the speed at which pixel data are generated. However, the use of such ECL-logic DDA not only makes the arrangement large-scaled, but also increases the power consumption. Further, the ECL-logic DDA is susceptible to the influence of noise.